1. Field of the Invention
The present invention relates to a decoding apparatus adapted for an optical access system and a method therefor; more particularly, relates to a decoding apparatus and a decoding method for detecting and correcting errors in a data retrieved from an optical storage medium.
2. Descriptions of the Related Art
Since optical storage media have advantages of large capacity, low cost, high access speed, high compatibility, and portability, they become one of the most popular devices for storing data nowadays.
Due to the influence of scratches, fingerprints, collision, or dust, errors might occur when data stored in an optical storage medium is retrieved. Therefore, optical access systems of the prior art usually have a correction mechanism to correct the errors. FIG. 1 shows an optical access system of the prior art, and FIG. 2 shows a flow chart of a method of the prior art adapted for the optical access system to correct errors. The optical access system 1 comprises a pickup head 105, a buffer 107, a DRAM 109, a DRAM controller 111, a detection element 113, and an error correction element 115. The optical access system 1 retrieves data from an optical storage medium 101, such as a compact disc, and decodes the data before transmitting the data to a host 103 which is electrically connected to the optical access system 1. More particularly, referring to both FIG. 1 and FIG. 2, a pickup head 105 reads the data from the optical storage medium 101 in step 201. Then step 203 is executed wherein the data is stored in the buffer 107 temporarily. In step 205, the data is then written into the DRAM 109 from the buffer 107 through the DRAM controller 111. Step 207 is executed to transmit the data from the DRAM 109 through the DRAM controller 111 to the detection element 113 to detect whether an error in the data exists after decoding the data. If no, it means that there is no error detected in the data and step 215 is executed to transmit the data to the host 103. If yes, step 209 is executed in which the data is then transmitted to the error correction element 115 to be corrected. After step 209 is executed, the method goes to step 211 to store a corrected data back to the DRAM 109. Finally, step 213 is executed wherein the corrected data is transmitted to the host 103.
In step 207, the decoding and detecting comprise an error detection code (EDC) check and at least one of a syndrome check and an erasure check to affirm whether an EDC error, a syndrome error, or an erasure error of the data exists.
U.S. Pat. No. 6,003,151 and U.S. Pat. No. 6,662,335 disclose similar systems or methods shown in FIG. 1 and FIG. 2. In both of the two patents, data is stored in a memory through a memory controller first. Then the data is transmitted to be detected whether there is an error in the data. If yes, the data and the error are sent to an error correction element for correct the error. After the correction, the corrected data is transmitted to a host. Based on the above descriptions, people skilled in the art can realize that the memory, i.e., the DRAM 109 is frequently accessed. This occupies lots of the bandwidth of the memory. Besides, if there is no error in the data, the process of decoding is still executed, which influences process speed and wastes power. Especially for BD/DVD/HDDVD discs, an error rate of data is generally less than 1%. In other words, over 99% of the decoding is unnecessary.
To solve the aforementioned drawbacks, a decoding apparatus which may decrease unnecessary operations and save the bandwidth of memory is required in the industrial field.